package com.ruoyi.order.mapper;


import com.ruoyi.order.domain.WxForm;
import com.ruoyi.order.domain.WxFormItem;

import java.util.List;

/**
 * 生成员工提成及报销模版表Mapper接口
 * 
 * @author ruoyi
 * @date 2024-09-04
 */
public interface WxFormMapper 
{
    /**
     * 查询生成员工提成及报销模版表
     * 
     * @param id 生成员工提成及报销模版表主键
     * @return 生成员工提成及报销模版表
     */
    public WxForm selectWxFormById(Long id);

    /**
     * 查询生成员工提成及报销模版表列表
     * 
     * @param wxForm 生成员工提成及报销模版表
     * @return 生成员工提成及报销模版表集合
     */
    public List<WxForm> selectWxFormList(WxForm wxForm);

    /**
     * 新增生成员工提成及报销模版表
     * 
     * @param wxForm 生成员工提成及报销模版表
     * @return 结果
     */
    public int insertWxForm(WxForm wxForm);

    /**
     * 修改生成员工提成及报销模版表
     * 
     * @param wxForm 生成员工提成及报销模版表
     * @return 结果
     */
    public int updateWxForm(WxForm wxForm);

    /**
     * 删除生成员工提成及报销模版表
     * 
     * @param id 生成员工提成及报销模版表主键
     * @return 结果
     */
    public int deleteWxFormById(Long id);

    /**
     * 批量删除生成员工提成及报销模版表
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteWxFormByIds(Long[] ids);

    /**
     * 批量删除生成单时出现的选项信息
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteWxFormItemByFormIds(Long[] ids);
    
    /**
     * 批量新增生成单时出现的选项信息
     * 
     * @param wxFormItemList 生成单时出现的选项信息列表
     * @return 结果
     */
    public int batchWxFormItem(List<WxFormItem> wxFormItemList);
    

    /**
     * 通过生成员工提成及报销模版表主键删除生成单时出现的选项信息信息
     * 
     * @param id 生成员工提成及报销模版表ID
     * @return 结果
     */
    public int deleteWxFormItemByFormId(Long id);

    public List<WxForm> selectEnableForm(Long deptId);
}
